Face-down dock-hold (lock attitude + precision gain)#61
Draft
mringsby wants to merge 1 commit into
Draft
Conversation
Adds a one-button dock-hold that locks the ROV face-down for docking and gives the pilot finer control for the approach: - Engage: capture current heading and send a setpoint override holding pitch ~90deg nose-down, roll level, and current yaw; save the current gains and drop to a precision master gain. Surge/sway/heave stay under pilot control. - Release: clear the override and restore the saved gains. Relies on the already-tuned pitch/roll/yaw PID (the override only holds attitude when those gains are non-zero) and reuses the existing setpoint-override service (UDP 5007) -- no firmware/protocol change. Toggle from the gamepad (Y button), the home Docking button (previously an unwired stub), or the debug page. New endpoints: /api/dock/toggle|engage|release |status; dock state also surfaced in /api/command/status. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
One-button dock-hold that locks the ROV face-down for docking and gives the pilot finer control for the approach.
DOCK_GAIN). Surge/sway/heave stay under pilot control./api/dock/{toggle,engage,release,status}; dock state also in/api/command/status.Based on
feature/global-frame(which is based onfeature/light-control). Review/merge the stack in order: light-control → global-frame → dock-hold.Depends on tuned PID
The override only physically holds attitude when pitch/roll/yaw PID gains are non-zero/tuned (confirmed tuned by the team).
Verification
ruff check .+ruff format --check .— pass.pytest tests/test_controller.py— pass (engage locks attitude + applies gain; release clears + restores gains; toggle; missing-client error).DOCK_PITCH_DEGsign/magnitude for true face-down (firmware negates pitch internally); tuneDOCK_GAIN.🤖 Generated with Claude Code